<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1252">
<TITLE>KBDCLASS</TITLE>
</HEAD>
<BODY TEXT="#000000" LINK="#0000ff" VLINK="#800080" BGCOLOR="#ffffff" leftmargin="8">
<FONT FACE="Verdana"><H2><A NAME="MYSAMPLE">KBDCLASS</A> </H2> <P> 

<h3>SUMMARY</h3><P><FONT FACE="Verdana" SIZE=2><P>
This keyboard class driver is compliant with Plug and Play on Windows&#174; 2000 and beyond. The behavior of the various routines is documented in the source code files. The driver works on both 32 and 64 bit platforms. <P>

In addition to Plug and Play, the driver supports legacy Windows NT&#174; 4.0-style input devices, Power Management, and all other Windows 2000 drivers.<P>

<h3>BUILDING THE SAMPLE</h3><P><FONT FACE="Verdana" SIZE=2><P>
The files necessary to build the sample include Kbdclass.c, Kbdlass.h, Kbdlass.rc, Kbdlog.rc, the makefile, and the sources. Once built, the sample produces a keyboard class driver (Kbdclass.sys). One binary is produced. Both checked and free build are available and functional. KEYBOARD.INF (the inf required to load this driver) is a system INF.<P>

This sample is the complete source code for the shipping keyboard
class driver, which runs always on Windows systems since Windows 2000.
It is therefore always installed. As a system binary, it is also
subject to Windows File Protection. For Windows XP and prior releases,
you can replace kbdclass.sys in the %Windir%\System32\Drivers directory to
use your customized version. As of Windows Vista, it is no
longer possible to overwrite system binaries on the filesystem, so
replacing the inbox version for debugging will require use of a kernel debugger and
the .kdfiles command. Alternatively, it is possible to rename the
binary and inf and install the driver as a separate instance; this
would not replace the inbox kbdclass, but would allow the modified
driver to load.<p>

<H3>CODE TOUR</H3>
<H4>File Manifest</H4>
</FONT><FONT FACE="Courier" SIZE=3><U><PRE>File&#9;&#9;Description
</U>

Kbdclass.htm&#9;The documentation for this sample (this file).
Sources&#9;	The generic file for building this code sample.
Kbdclass.c&#9;The code for the complete driver
Kbdclass.h&#9;Prototypes and definitions
Kbdclass.rc&#9;Standard resource file (listing name and version number)
Kbdlog.mc&#9;List of standard error-log messages for the keyboard class driver

</FONT><P ALIGN="CENTER"><A HREF="#top"><FONT FACE="Verdana" SIZE=2>Top of page</FONT></A><FONT FACE="Verdana" SIZE=2> </P></FONT>
<TABLE CELLSPACING=0 BORDER=0 WIDTH=624>
<TR><TD VALIGN="MIDDLE" BGCOLOR="#00ffff" HEIGHT=2>
<P></TD>
</TR>
</TABLE>

<FONT FACE="MS Sans Serif" SIZE=1><P>&copy; 2009 Microsoft Corporation</FONT><FONT FACE="Verdana" SIZE=2> </P></FONT></BODY>
</HTML>


